Using BFD packets in a virtualized device

ABSTRACT

Examples disclosed herein relate to a method comprising receiving a bidirectional forwarding detection (BFD) packet originating from a first network device, wherein the first linked network device and a second linked network device are part of a link aggregation group running a BFD session. The method may include transmitting, from the first linked network device, a BFD synchronization packet to the second linked network device and receiving, at the second linked network device, the BFD synchronization packet, wherein a time-to-live (TTL) value of the BFD synchronization packet is lower than a BFD TTL supported by the BFD session. The method may also include determining that the BFD synchronization packet is a BFD single-hop packet coming from a VLANs using the active forwarding mode and determining not to discard the BFD synchronization packet.

BACKGROUND

Link aggregation (LAG) is point-to-point link between a pair of networkdevices. Traffic may get load balanced among interfaces of the LAG, inorder to help increase the aggregate bandwidth and improve link failurerecovery. Link aggregation may be used to create a virtual environmentwhen a LAG is created between a pair of two network devices, such asnetwork switch.

BRIEF DESCRIPTION OF THE DRAWINGS

Some implementations of the present disclosure are described withrespect to the following figures.

FIG. 1A is a block diagram of an example system for using BFD packets ina virtualized switch environment.

FIG. 1B is a block diagram of another example system for using BFDpackets in a virtualized switch environment.

FIG. 2 is a flow diagram of an example method for transmitting BFDpackets in a virtualized switch environment.

FIG. 3 is a block diagram of another example method for utilizing TTLpackets in a BFD supported virtualized switch environment.

FIG. 4 is a block diagram of an example storage medium storingmachine-readable instructions using BFD packets in a virtualized switchenvironment.

Throughout the drawings, identical reference numbers designate similar,but not necessarily identical, elements. The figures are not necessarilyto scale, and the size of some parts may be exaggerated to more clearlyillustrate the example shown. Moreover, the drawings provide examplesand/or implementations consistent with the description; however, thedescription is not limited to the examples and/or implementationsprovided in the drawings.

DETAILED DESCRIPTION

In the present disclosure, use of the term “a,” “an”, or “the” isintended to include the plural forms as well, unless the context clearlyindicates otherwise. Also, the term “includes,” “including,”“comprises,” “comprising,” “have,” or “having” when used in thisdisclosure specifies the presence of the stated elements, but do notpreclude the presence or addition of other elements.

Bidirectional Forwarding Detection (BFD) is a network protocol that maybe used to detect faults between two network devices acting asforwarding engines, such as network switches connected by a link. Itprovides detection of faults even on physical media that doesn't supportfailure detection of any kind, such as Ethernet, virtual circuits,tunnels and MPLS Label Switched Paths. A session may operate in one oftwo modes: asynchronous mode and demand mode. In asynchronous mode, bothendpoints periodically send Hello packets to each other. If a number ofthose packets are not received, the session is considered down. Theremay be a variety of issues in using BFD in a virtualized network deviceenvironment.

A method for supporting BFD packets in a virtualized switch environmentmay include receiving, at a first linked network device, a bidirectionalforwarding detection (BFD) packet originating from a first networkdevice, wherein the first linked network device and a second linkednetwork device are part of a link aggregation group running a BFDsession and transmitting, from the first linked network device, a BFDsynchronization packet to the second linked network device, wherein thelink aggregation group uses an active forwarding mode where data trafficflowing through first linked network device is routed through the secondlinked network device. The method may include receiving, at the secondlinked network device, the BFD synchronization packet, wherein atime-to-live (TTL) value of the BFD synchronization packet is lower thana BFD TTL supported by the BFD session, determining, by the secondlinked network device, that the BFD synchronization packet is a BFDsingle-hop packet coming from a VLANs using the active forwarding modeand determining, by the second linked network device, not to discard theBFD synchronization packet.

FIG. 1A is a block diagram of an example system 100 where using BFDpackets in a virtualized device environment may be useful.

The system 100 may include a first network device 104 and a secondnetwork device 106 connected by a link 108. The link 108 may be used tocreate a virtualized network device environment between the two devices.In one aspect, the link 108 may be part of an MCLAG topology. The systemmay also include a third network device 110 and a fourth network device112.

Multi-Chassis Link Aggregation Group (MCLAG) is a type of LAG withconstituent ports that terminate on separate chassis, primarily for thepurpose of providing redundancy in the event one of the chassis fails.MCLAG may be used to create a virtual environment when a LAG is createdbetween a pair of two network devices, such as network switches.

Network devices 110-112 may be any number of network devices, asdescribed above. For example, devices 110-112 may be network switches. Anetwork device may be a device within a network that forwards data sentby a sender device toward a recipient device (or multiple recipientdevices). In some examples, a network device includes a layer 2 switchthat forwards data packets (also referred to as data frames or dataunits) based on layer 2 addresses in the data packets. Examples of layer2 addresses include Medium Access Control (MAC) addresses. Inalternative examples, a switch includes a layer 3 router that forwardsdata packets based on layer 3 addresses, such as Internet Protocol (IP)addresses in the data packets.

A “packet” or “data packet” can refer to any unit of data that can beconveyed over a network. A packet or data packet may also refer to aframe or data frame, a data unit, a protocol data unit, and so forth.

A switch forwards data (in data packets) between a sender device and arecipient device (or multiple recipient devices) based on forwardinginformation (or equivalently, “routing information”) accessible by theswitch. The forwarding information can include entries that map networkaddresses (e.g., MAC addresses or IP addresses) and/or ports torespective network paths toward the recipient device(s).

The first network device 104 may be communicatively coupled to each ofthe network devices 110-112. Similarly, the second network device 106may be communicatively coupled to each of the network devices 110-112.Link 108 and the various connections between first network device 104,the second network device 106 and the network devices 110-112 may be aphysical link, such as an Ethernet connection or other physicalconnection, a wireless connection, a virtual connection, etc.

The combination of the first network device 104 and the second networkdevice 106 may be presented to the user as a single virtualized networkdevice 116. One of the network devices may be a primary network deviceand the other network device may be a peer device. In the event that thefirst network device 104 goes down, no traffic may be lost, although thetotal amount of bandwidth available to the system may be reduced.Moreover, this architecture provides the ability to configure onenetwork device 104 and have the configuration synced to the networkdevice 106. This keeps the network facing elements consistent acrossmanagement changes to allow for load balancing and high availability incase of failure.

Moreover, the virtualization of the first network device 104 and thesecond network device 106 as a single virtualized device 116 may allowan LACP (Link Aggregation Control Protocol) group to span more than onenetwork device. In MCLAG (Multi Chassis LAG) based virtualizeddeployments there are two independent control planes. If the MCLAG pairis connected-up a primary device via an MCLAG with any routing protocolrunning on top, the network devices may sync their Router-MAC entriesbetween the devices involved so that data traffic can be directlyforwarded without sending over an Inter-Switch Link (ISL).

Bidirectional Forwarding Detection (BFD) is a detection protocol thatmay be used to detect faults between two network devices acting asforwarding engines, such as network switches connected by a link. BFDmay be used to provide fast forwarding path failure detection times formedia types, encapsulations, topologies, and routing protocols. BFD canbe used to detect forwarding path failures at a uniform rate, ratherthan the variable rates for different routing protocol hello mechanisms,making network profiling and planning easier and reconvergence time willbe consistent and predictable. BFD may use control packets and echopackets to detect link failures.

In a virtualized environment, BFD is run for link failure detection whenrouting protocols are run between these devices. When the BFD Echofunction is active, a stream of BFD Echo packets is transmitted in sucha way as to have the other system loop them back through its forwardingpath. If a number of packets of the echoed data stream are not received,the session is declared to be down. The key point is that the BFD echoleverages the fast/hardware forwarding path on the neighbor to get theecho packet returned to itself without waiting for an interrupt andspecial handling by the CPU. An echo packet is sent with the destinationIP address as self IP address and destination Router-MAC address as theRouter-MAC address of the peer to which BFD session is established.

A BFD session may operate in one of two modes: asynchronous mode anddemand mode. In asynchronous mode, both endpoints periodically sendHello packets to each other. If a number of those packets are notreceived, the session is considered down. There may be a variety ofissues in using BFD in a virtualized network device environment.

For example, a virtualized network device environment may use an activeforwarding mode. In an active forwarding mode, some or all data packetsreceived at one network device in the environment may be routed to othernetwork devices in the environment. Routing is the process oftransmitting the packets from one device to another on different L3networks. In contrast, forwarding is the process of transmitting thepackets between devices on the same L2/L3 network. However, routing adata packet may cause a hop counter to be altered.

A hop is one portion of the path between a source of data and itsdestination. As data packets are routed from their source to adestination, the data packet may pass through a variety of networkdevices. Each time packets are routed to the next network device, a hopoccurs. As an example, in a virtualized network environment with twonetwork devices in a LAG pair, if a first network device routes a datapacket (such as a BFD packet) to the second network device in the LAGpair, one hop occurs. Accordingly, a Time-to-live (TTL) value, whichmeasures the number of hops, may be decremented by one.

However, in a BFD environment, a BFD single-hop packet may be requiredto have a certain TTL or the packet will be dropped. In some aspects,BFD single hop packets are required to have a TTL of 255.

In one aspect, system 150 may implement BFD asynchronous traffic throughsoftware, such as, for example, at a control plane. This implementationmay include transmitting Incoming BFD asynchronous traffic from thereceiving device's forwarding plane over to its control plane. Thecontrol plane may process the packet and update its internal BFD sessionstate, including establishing the session and updating the negotiatedoperating parameters). The control plane may then periodically send BFDasynchronous traffic packets to its forwarding plane and the forwardingplane will transmit the packet on the wire over to the peer.

In these aspects, system 150 may implement one of several techniques tosupport BFD in a virtualized device environment. A first technique mayinvolve creating a networking tunnel between the virtualized devices,such as for example creating a networking tunnel between first device104 and second device 106 (on top of 108). Tunneling is a process bywhich network communications are channeled between two devices. A linkmay be created between the two devices and data may be encapsulated atone device before sending to the other. Since traffic will travel withinthe tunnel, the TTL will remain unmodified and thus packets will not bediscarded for having a TTL value that is less than required.

A second technique may be to use a ternary content-addressable memory(TCAM) at each device in the virtualized device environment.Specifically, the TCAM may be used to match single-hop BFD packets andadjust their TTL to a desired value. For example, a transferring device(such as second device 106) may route a BFD packet to a receiving device(such as first device 104). This packet routing would typically causethe transferring device to drop the TTL from 255 to 254 before routing.However, a TCAM at the transferring device (second device 106) mayidentify the BFD packet and the number of hops the packet took to thetransferring device (second device 106) and will be taken to thereceiving device (first device 104). Upon determining that one hop willbe taken from the transferring device to the receiving device, the TCAMof the transferring device (second device 106) may prevent the TTL frombeing decremented from 255 to 254, thus causing the BFD packet to not bediscarded when received at the receiving device (first device 104). Insome aspects, the TTL may be decremented as usual, by the transferringdevice (second device 106) and the TCAM of the receiving device (firstdevice 104) identify that the packet is a BFD packet and that one hopwas taken and, as a result, may increment the TTL to 255.

A third technique may be to modify the BFD control plane daemon tosupport BFD single-hop packets with a TTL of a desired value whencertain other criteria are met. For example, the BFD implementation onfirst device 104 may be modified to support a TTL of 254, when a packetcomes via a link (i.e. 108) with another virtualized device in thevirtualized device environment (i.e. second device 106) coming fromVLANs where Active Forwarding mode is enabled. Advantageously, thistechnique may not require any additional hardware resources.

In another aspect system 150 may implement BFD asynchronous trafficthrough hardware, such as, for example, at a forwarding plane. IncomingBFD asynchronous traffic may be transmitted from the receiving device'sforwarding plane ingress pipeline over to its Operations,Administration, and Maintenance processor (OAMP) which resides on thesame forwarding plane. The OAMP may process the packet and update itsinternal BFD session state, including establishing the session andupdating the negotiated operating parameters. The OAMP may periodicallysend BFD asynchronous traffic packets to its forwarding plane. Theforwarding plane may transmit the packet on the wire over to the peer.

In these aspects, system 150 may implement one of several techniques tosupport BFD in a virtualized device environment. A first technique mayinvolve creating a networking tunnel between the virtualized devices,such as for example creating a networking tunnel between first device104 and second device 106. Tunneling is a process by which networkcommunications are channeled between two devices. A link may be createdbetween the two devices and data may be encapsulated at one devicebefore sending to the other. Since traffic will travel within thetunnel, the TTL will remain unmodified and thus will not be discarded.

A second technique may be to use a ternary content-addressable memory(TCAM) at each device in the virtualized device environment.Specifically, the TCAM may be used to match single-hop BFD packets andadjust their TTL to a desired value. For example, a transferring device(such as second device 106) may route a BFD packet to a receiving device(such as first device 104). This packet routing would typically causethe transferring device to drop the TTL from 255 to 254 before routing.However, a TCAM at the transferring device (second device 106) mayidentify the BFD packet and the number of hops the packet took to thetransferring device (second device 106) and will be taken to thereceiving device (first device 104). Upon determining that one hop willbe taken from the transferring device to the receiving device, the TCAMof the transferring device (second device 106) may prevent the TTL frombeing decremented from 255 to 254, thus causing the BFD packet to not bediscarded when received at the receiving device (first device 104). Insome aspects, the TTL may be decremented as usual, by the transferringdevice (second device 106) and the TCAM of the receiving device (firstdevice 104) identify that the packet is a BFD packet and that one hopwas taken and, as a result, may increment the TTL to 255.

FIG. 1B is a block diagram of another example system 150 for using BFDpackets in a virtualized device environment. Each network device in thevirtualized environment may be configured to actively manage a networkand/or to appear as a single virtual device in a management pane.

System 150 may include a first device 104 with a processor 152 a and amemory 152 b that may be coupled to each other through a communicationlink (e.g., a bus). System 150 may also include a second device 106 witha processor 154 a and a memory 154 b. Processor 152 a and 154 a mayinclude a single or multiple Central Processing Units (CPU) or anothersuitable hardware processor(s). In some examples, memory 152 b and 154 bstore machine readable instructions executed by processor 152 a and 154a, respectively, for system 150. Memory 152 b and 154 b may include anysuitable combination of volatile and/or non-volatile memory, such ascombinations of Random Access Memory (RAM), Read-Only Memory (ROM),flash memory, and/or other suitable memory.

Memory 154 a stores instructions to be executed by processor 154 bincluding instructions for first BFD packet receiver 156, BFD packettransmitter 158 and/or other components. Memory 154 b storesinstructions to be executed by processor 154 a including instructionsfor second BFD receiver 160, BFD packet determiner 162, BFD packetadjustor 162 and/or other components. According to variousimplementations, system 150 may be implemented in hardware and/or acombination of hardware and programming that configures hardware.Furthermore, in FIG. 1B and other Figures described herein, differentnumbers of components or entities than depicted may be used.

Processor 152 a may execute first BFD packet receiver 156 to receive abidirectional forwarding detection (BFD) packet originating from a firstnetwork device, wherein a first linked network device and a secondlinked network device are part of a link aggregation group running a BFDprocess. The BFD session may be run on top of the link aggregationgroup. The link aggregation group may implement asynchronous BFD trafficat a forwarding plane of one or more network devices.

The link aggregation group (between 110 and 104/106) may have a primarylink to the first network device and a secondary link to the secondnetwork device. The primary link is between the first network device(110) and first linked network device of the link aggregation group(104) and the secondary link is between the first network device (110)and the second linked network device (106) of the link aggregationgroup.

Processor 152 a may execute BFD packet transmitter 158 to transmit a BFDsynchronization packet from a first linked network device (104), whereinthe link aggregation group uses an active forwarding mode where datatraffic flowing through first linked network device is routed through tosecond linked network device (106). Routed data to the second linkednetwork device (106) as part of the active forwarding mode may includedecrementing the TTL value by a particular value.

The particular value may be equivalent to the number of hops taken inthe transmission of a packet. For example, if an initial TTL value is255, after a one hop transmission, the value may be decreased by 1 tobecome 254.

Processor 154 a may execute second BFD receiver 160 to receive the BFDsynchronization packet at a second linked network device (106), whereina time-to-live (TTL) value of the BFD synchronization packet is lowerthan a BFD TTL supported by the BFD process. Processor 154 a may executeBFD packet determiner 162 that the BFD synchronization packet is a BFDsingle-hop packet coming from a VLANs using the active forwarding mode(108). In some aspects, the processor 154 a may execute BFD packetdeterminer 162 to determine that the time-to-live (TTL) value of the BFDsynchronization packet is an acceptable increment lower than a BFD TTLsupported by the BFD process.

For example, a network device in a virtualized device environment mayreceive a BFD synchronization packet and determine that it came from asecond network device part of the virtualized device environment, thatthe packet came via a one hop transmission and that the second networkdevice was using the active forwarding mode.

Processor 154 a may execute BFD packet adjustor 164 to adjust thetime-to-live (TTL) value of the BFD synchronization packet to a BFD TTLsupported by the BFD process. In some aspects, processor 154 a mayexecute a session establisher (not pictured) to establish a BFD sessionbetween the first network device and the link aggregation group.

For example, if the BFD packet was received and had a TTL value of 254,the TTL value may be adjusted to 255.

In some aspects, BFD packet determiner 162 and BFD packet adjustor 164may be part of the second device 106. In these aspects, the processor152 a may execute BFD packet determiner 162 to determine that thetime-to-live (TTL) value of the BFD synchronization packet is anacceptable increment lower than a BFD TTL supported by the BFD process.

Processor 152 a may then execute BFD packet adjustor 164 to adjust thetime-to-live (TTL) value. For example, if the BFD packet was supposed tobe decremented from 254 to 255, the BFD packet adjustor 164 may be usedto prevent the TTL value from being decremented.

FIG. 2 is a flow diagram of a method 200 for using BFD packets in avirtualized device environment. The virtualized device deployment mayhave a similar topology to system 100 described above. Accordingly,parts of and/or the entire method may be performed by one or more of thedevices 104, 106, 110 and 112 of system 100. Although the description ofFIG. 2 may refer to system 100 and other elements of FIGS. 1A and 1B,this is for illustrative purposes only and the method described in FIG.2 may be used in a variety of topologies.

The method 200 may begin at block 202 and proceed to block 204 where themethod may include receiving, at a first linked network device, abidirectional forwarding detection (BFD) packet originating from a firstnetwork device, wherein the first linked network device and a secondlinked network device are part of a link aggregation group running a BFDsession. The BFD session may be run on top of the link aggregationgroup. The link aggregation group may implement asynchronous BFD trafficat a control plane of one or more network devices.

The link aggregation group has a primary link to the first networkdevice and a secondary link to the second network device. The primarylink is between the first network device and first linked network deviceof the link aggregation group and the secondary link is between thefirst network device and the second linked network device of the linkaggregation group.

The method may proceed to block 206, where the method may includetransmitting, from the first linked network device, a BFDsynchronization packet to the second linked network device, wherein thelink aggregation group uses an active forwarding mode where data trafficflowing through first linked network device is routed through the secondlinked network device. Routing data through the second linked networkdevice as part of the active forwarding mode may include decrementingthe TTL value by a particular value.

At block 208, where the method may include receiving, at the secondlinked network device, the BFD synchronization packet, wherein atime-to-live (TTL) value of the BFD synchronization packet is lower thana BFD TTL supported by the BFD session. In some aspects, the method mayalso include determining, by the second linked network device, that thetime-to-live (TTL) value of the BFD synchronization packet is anacceptable increment lower than a BFD TTL supported by the BFD process.

At block 210, determining, by the second linked network device, that theBFD synchronization packet is a BFD single-hop packet coming from aVLANs using the active forwarding mode. In some aspects, the method mayinclude establishing a BFD session between the first network device andthe link aggregation group. At block 212, where the method may includedetermining, by the second linked network device, not to discard the BFDsynchronization packet. The method may proceed to block 214, where themethod may end.

FIG. 3 is a flow diagram of a method 300 for an example method for usingBFD packets in a virtualized device environment. The virtualized devicedeployment may have a similar topology to system 100 described above.Accordingly, parts of and/or the entire method may be performed by oneor more of the devices 104, 106, 110 and 112 of system 100. Although thedescription of FIG. 2 may refer to system 100 and other elements ofFIGS. 1A and 1B, this is for illustrative purposes only and the methoddescribed in FIG. 2 may be used in a variety of topologies.

The method may begin at block 302 and may proceed to block 304 where themethod may include routing data through the second linked network deviceas part of the active forwarding mode. Routing the data may be performedas part of transmitting, from the first linked network device, a BFDsynchronization packet to the second linked network device in a similarmethod to block 206 described above in reference to FIG. 2. At block306, the method may include maintaining the TTL value of the BFDsynchronization packet at 255. For example, in some aspects, a BFDsingle-hop sessions may require its packets to have a TTL of 255 and anyother value should be dropped. As a result of the routing, the TTL ofthe BFD synchronization packet may be 254, as it went one hop from onemember device of the virtualized device environment to a second deviceof the virtualized device environment. The method may proceed to block308, where the method may end.

FIG. 4 is a block diagram of an example system 400 for using BFD packetsin a virtualized device environment. Both the first and second networkdevices may be configured to actively manage a network and/or to appearas a single virtual device in a management pane.

In the example illustrated in FIG. 4, system 400 includes a processor402 and a machine-readable storage medium 404. In some aspects,processor 402 and machine-readable storage medium 404 may be part of anApplication-specific integrated circuit (ASIC). Although the followingdescriptions refer to a single processor and a single machine-readablestorage medium, the descriptions may also apply to a system withmultiple processors and multiple machine-readable storage mediums. Insuch examples, the instructions may be distributed (e.g., stored) acrossmultiple machine-readable storage mediums and the instructions may bedistributed (e.g., executed by) across multiple processors.

Processor 402 may be at least one central processing unit (CPU),microprocessor, and/or other hardware devices suitable for retrieval andexecution of instructions stored in machine-readable storage medium 404.In the example illustrated in FIG. 4, processor 402 may fetch, decode,and execute instructions 406, 408 and 410. Processor 402 may include atleast one electronic circuit comprising a number of electroniccomponents for performing the functionality of at least one of theinstructions in machine-readable storage medium 404. With respect to theexecutable instruction representations (e.g., boxes) described and shownherein, it should be understood that part or all of the executableinstructions and/or electronic circuits included within one box may beincluded in a different box shown in the figures or in a different boxnot shown.

Machine-readable storage medium 404 may be any electronic, magnetic,optical, or other physical storage device that stores executableinstructions. Thus, machine-readable storage medium 404 may be, forexample, Random Access Memory (RAM), an Electrically-ErasableProgrammable Read-Only Memory (EEPROM), a storage drive, an opticaldisc, and the like. Machine-readable storage medium 404 may be disposedwithin system 400, as shown in FIG. 4. In this situation, the executableinstructions may be “installed” on the system 400. Machine-readablestorage medium 404 may be a portable, external or remote storage medium,for example, that allows system 400 to download the instructions fromthe portable/external/remote storage medium. In this situation, theexecutable instructions may be part of an “installation package”. Asdescribed herein, machine-readable storage medium 404 may be encodedwith executable instructions for context aware data backup. Themachine-readable storage medium may be non-transitory.

Referring to FIG. 4, receive instructions 406, when executed by aprocessor (e.g., 602), may cause system 400 to receive, at a secondnetwork device, a bidirectional forwarding detection (BFD) packet from afirst linked network device, wherein the first linked network device anda second linked network device are part of a link aggregation grouprunning a BFD process the link aggregation group uses an activeforwarding mode where data traffic flowing through first linked networkdevice is routed through the second linked network device. Routing datathrough the second linked network device as part of the activeforwarding mode may include decrementing the TTL value by a particularvalue.

In some aspects, the BFD session may be run on top of the linkaggregation group. In some aspects, the link aggregation groupimplements asynchronous BFD traffic at a control plane of one or morenetwork devices. In some aspects, the link aggregation group has aprimary link is between the first network device and first linkednetwork device of the link aggregation group and a secondary linkbetween the first network device and the second linked network device ofthe link aggregation group.

Determine instructions 408, when executed by a processor (e.g., 402),may cause system 400 to determine, at the second network device, thatthe BFD synchronization packet is a BFD single-hop packet coming from aVLANs using the active forwarding mode and a time-to-live (TTL) value ofthe BFD synchronization packet is an acceptable increment lower than aBFD TTL supported by the BFD process. In some aspects, determineinstructions 408, when executed by a processor (e.g., 402), may causesystem 400 to determine, by the second linked network device, that thetime-to-live (TTL) value of the BFD synchronization packet is anacceptable increment lower than a BFD TTL supported by the BFD process

Discard instructions 410, when executed by a processor (e.g., 402), maycause system 400 to determine, at the second network device, not todiscard the BFD synchronization packet. In some aspects,machine-readable storage medium 404 may also include discardinstructions, when executed by a processor (e.g., 402), may cause system400 to establish a BFD session between the first network device and thelink aggregation group.

The foregoing disclosure describes a number of examples for using BFDpackets in a virtualized device environment. The disclosed examples mayinclude systems, devices, computer-readable storage media, and methodsfor using BFD packets in a virtualized device environment. For purposesof explanation, certain examples are described with reference to thecomponents illustrated in FIGS. 1A-4. The content type of theillustrated components may overlap, however, and may be present in afewer or greater number of elements and components. Further, all or partof the content type of illustrated elements may co-exist or bedistributed among several geographically dispersed locations. Further,the disclosed examples may be implemented in various environments andare not limited to the illustrated examples.

Further, the sequence of operations described in connection with FIGS.1A-4 are examples and are not intended to be limiting. Additional orfewer operations or combinations of operations may be used or may varywithout departing from the scope of the disclosed examples. Furthermore,implementations consistent with the disclosed examples need not performthe sequence of operations in any particular order. Thus, the presentdisclosure merely sets forth possible examples of implementations, andmany variations and modifications may be made to the described examples.

The invention claimed is:
 1. A method comprising: receiving, at a firstlinked network device, a bidirectional forwarding detection (BFD) packetoriginating from a first network device, wherein the first linkednetwork device and a second linked network device are part of a linkaggregation group running a BFD session; transmitting, from the firstlinked network device, a BFD synchronization packet to the second linkednetwork device, wherein the link aggregation group uses an activeforwarding mode where data traffic flowing through first linked networkdevice is routed through the second linked network device; receiving, atthe second linked network device, the BFD synchronization packet,wherein a time-to-live (TTL) value of the BFD synchronization packet islower than a BFD TTL supported by the BFD session; determining, by thesecond linked network device, that the BFD synchronization packet is aBFD single-hop packet coming from a VLANs using the active forwardingmode; and determining, by the second linked network device, not todiscard the BFD synchronization packet.
 2. The method of claim 1comprising: determining, by the second linked network device, that thetime-to-live (TTL) value of the BFD synchronization packet is anacceptable increment lower than a BFD TTL supported by the BFD process.3. The method of claim 1, wherein the BFD session is run on top of thelink aggregation group.
 4. The method of claim 1, wherein routing datathrough the second linked network device as part of the activeforwarding mode includes decrementing the TTL value by a particularvalue.
 5. The method of claim 1 comprising: establishing a BFD sessionbetween the first network device and the link aggregation group.
 6. Themethod of claim 1, wherein the link aggregation group implementsasynchronous BFD traffic at a control plane of one or more networkdevices.
 7. The method of claim 1, wherein the link aggregation grouphas a primary link to the first network device and a secondary link tothe first network device.
 8. The method of claim 7, wherein the primarylink is between the first network device and first linked network deviceof the link aggregation group and the secondary link is between thefirst network device and the second linked network device of the linkaggregation group.
 9. A non-transitory computer-readable storage mediumencoded with instructions, the instructions executable by a processor ofa system to cause the system to: receive, at a second linked networkdevice, a bidirectional forwarding detection (BFD) synchronizationpacket from a first linked network device, wherein the first linkednetwork device and the second linked network device are part of a linkaggregation group running a BFD process and wherein the link aggregationgroup uses an active forwarding mode where data traffic flowing throughfirst linked network device is routed through the second linked networkdevice; determine, at the second linked network device, that the BFDsynchronization packet is a BFD single-hop packet coming from a VLANsusing the active forwarding mode and a time-to-live (TTL) value of theBFD synchronization packet is an acceptable increment lower than a BFDTTL supported by the BFD process; and determine, at the second linkednetwork device, not to discard the BFD synchronization packet.
 10. Thenon-transitory computer-readable storage medium of claim 9, theinstructions executable by a processor of a system to cause the systemto: determine, by the second linked network device, that thetime-to-live (TTL) value of the BFD synchronization packet is anacceptable increment lower than a BFD TTL supported by the BFD process.11. The non-transitory computer-readable storage medium of claim 9,wherein the BFD session is run on top of the link aggregation group. 12.The non-transitory computer-readable storage medium of claim 9, whereinrouting data through the second linked network device as part of theactive forwarding mode includes decrementing the TTL value by aparticular value.
 13. The non-transitory computer-readable storagemedium of claim 9, wherein the link aggregation group implementsasynchronous BFD traffic at a control plane of one or more networkdevices.
 14. The non-transitory computer-readable storage medium ofclaim 9, wherein the link aggregation group has a primary link isbetween the first network device and first linked network device of thelink aggregation group and a secondary link between the first networkdevice and the second linked network device of the link aggregationgroup.
 15. A system comprising: a first BFD packet receiver to receive abidirectional forwarding detection (BFD) packet originating from a firstnetwork device, wherein a first linked network device and a secondlinked network device are part of a link aggregation group running a BFDprocess; a BFD packet transmitter to transmit a BFD synchronizationpacket from the first linked network device, wherein the linkaggregation group uses an active forwarding mode where data trafficflowing through first linked network device is routed through the secondlinked network device; a second BFD receiver to receive the BFDsynchronization packet at the second linked network device, wherein atime-to-live (TTL) value of the BFD synchronization packet is lower thana BFD TTL supported by the BFD process; a BFD packet determiner that theBFD synchronization packet is a BFD single-hop packet coming from aVLANs using the active forwarding mode; and a BFD packet adjuster toadjust the time-to-live (TTL) value of the BFD synchronization packet toa BFD TTL supported by the BFD process.
 16. The system of claim 15comprising: the BFD packet determiner to determine that the time-to-live(TTL) value of the BFD synchronization packet is an acceptable incrementlower than a BFD TTL supported by the BFD process.
 17. The system ofclaim 15, wherein the BFD session is run on top of the link aggregationgroup.
 18. The system of claim 15, wherein routing data through thesecond linked network device as part of the active forwarding modeincludes decrementing the TTL value by a particular value.
 19. Thesystem of claim 15, wherein the link aggregation group implementsasynchronous BFD traffic at a forwarding plane of one or more networkdevices.
 20. The system of claim 15, wherein the primary link is betweenthe first network device and first linked network device of the linkaggregation group and the secondary link is between the first networkdevice and the second linked network device of the link aggregationgroup.